package prueba;

public interface iRadio {
     /* 
     * Enciende o apaga el Radio.
     * @return True si el radio se encendiÃ³, o false si el
     * radio se apagÃ³.
     */
    public abstract boolean Power();
    
    /* 
     * Cambia la banda de AM a FM o viceversa.
     * @return True si la banda es AM y false si la banda
     * es FM.
     */
    public abstract boolean ChangeSignal();
    
    /* 
     * Adelanta la frecuencia a la siguiente posible.
     * @return La frecuencia a la que se pasa.
     */
    public abstract float NextFreq();
    
    /*
     * Graba la frecuencia actual en el botÃ³n dado. Existen Ãºnicamente
     * 12 posiciones de memoria (botones) por cada Banda, y se encuentran
     * en el rango [1,12].
     * @return True si la operaciÃ³n fue exitosa, false en caso contrario.
     */
    public abstract boolean SaveFreq( int Boton );
    
    /*
     * Cambia la estaciÃ³n a la grabada en el botÃ³n dado. Devuelve la estaciÃ³n
     * actual que se escucha. Existen Ãºnicamente 12 posiciones de memoria por
     * cada Banda, y se encuentran en el rango [1,12].
     * @return La frecuencia (nueva) a la que estÃ¡ sintonizada la radio.
     */
    public abstract float ChangeTune( int Boton );
    
    /*
     * @return True si la radio estÃ¡ encendida, false en caso contrario.
     */
    public abstract boolean IsOn();
    
    /*
     * @return True si la banda es AM, y false si es FM.
     */
    public abstract boolean IsAm();
    
    /*
     * @return La frecuencia actual a la que estÃ¡ sintonizada la radio.
     */
    public abstract float GetFreq();      
}
